Decaf: Moving Device Drivers to a Modern Language

نویسندگان

  • Matthew J. Renzelmann
  • Michael M. Swift
چکیده

Writing code to interact with external devices is inherently difficult, and the added demands of writing device drivers in C for kernel mode compounds the problem. This environment is complex and brittle, leading to increased development costs and, in many cases, unreliable code. Previous solutions to this problem ignore the cost of migrating drivers to a better programming environment and require writing new drivers from scratch or even adopting a new operating system. We present Decaf Drivers, a system for incrementally converting existing Linux kernel drivers to Java programs in user mode. With support from programanalysis tools, Decaf separates out performance-sensitive code and generates a customized kernel interface that allows the remaining code to be moved to Java. With this interface, a programmer can incrementally convert driver code in C to a Java decaf driver. The Decaf Drivers system achieves performance close to native kernel drivers and requires almost no changes to the Linux kernel. Thus, Decaf Drivers enables driver programming to advance into the era of modern programming languages without requiring a complete rewrite of operating systems or drivers. With five drivers converted to Java, we show that Decaf Drivers can (1) move the majority of a driver’s code out of the kernel, (2) reduce the amount of driver code, (3) detect broken error handling at compile time with exceptions, (4) gracefully evolve as driver and kernel code and data structures change, and (5) perform within one percent of native kernel-only drivers.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

DECAF: A digital classroom application framework

This paper outlines the design and evaluation of the Digital Classroom Application Framework (DeCAF). DeCAF is designed to provide an environment upon which multimedia applications for the classroom can be developed and evaluated. With the inclusion of multimedia in the modern digital classroom comes new paradigms for teaching. Also, the combination of the Internet and multimedia allow digital ...

متن کامل

Interrelationships between Language and Literature from Old English to the Modern Period

Literature is the aesthetic manifestation of language. It is ‘as old as human language and as new as tomorrow’s sunrise.’ This paper explores the interrelationships between language and literature from 600 AD to the present day.  The grammar of present-day English is closely related to that of Old English with the same tense formation and word orders. The verse unit is a single line and its org...

متن کامل

A Programming and Execution Environment for Distributed Multi Agent Systems

Before the powerful agent programming paradigm can be adopted in commercial or industrial settings, a complete environment, similar to that for other programming languages must be developed. This includes, editors, libraries, and an environment for the completion of agent tasks. The DECAF[8] Agent architecture is a general purpose agent development platform that was designed specifically to sup...

متن کامل

Tools for Developing and Monitoring Agents in Distributed Multi-Agent Systems

Before the powerful agent programming paradigm can be adopted in commercial or industrial settings, a complete environment, similar to that for other programming languages, must be developed. This includes editors, libraries, and an environment for the completion of agent tasks. The DECAF[8] Agent architecture is a general purpose agent development platform that was designed specifically to sup...

متن کامل

DECAF-FSEFI: A Fine-grained, Accountable, Flexible, and Efficient Soft Error Fault Injection Framework for Profiling Application Vulnerability

Resilient computation has been an emerging topic in the field of high-performance computing (HPC) for several years. In particular, studies show that tolerating faults on leadershipclass supercomputers (such as exascale supercomputers) is expected to be one of the main challenges. In this paper, we utilize dynamic binary instrumentation and virtual machine based fault injection to emulate soft ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009